package com.gradumate.client.gui.formulier;

import java.util.Date;

import com.google.gwt.event.dom.client.BlurEvent;
import com.google.gwt.event.dom.client.BlurHandler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.FocusEvent;
import com.google.gwt.event.dom.client.FocusHandler;
import com.google.gwt.event.logical.shared.CloseEvent;
import com.google.gwt.event.logical.shared.CloseHandler;
import com.google.gwt.event.logical.shared.ValueChangeEvent;
import com.google.gwt.event.logical.shared.ValueChangeHandler;
import com.google.gwt.user.client.ui.Anchor;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.CaptionPanel;
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.RadioButton;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.user.datepicker.client.DatePicker;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.gradumate.client.Element;
import com.gradumate.shared.Toolbox;

/**
 * 
 * @author IJsbrand
 *
 */
public class TabSpecificaties {
	private AfstudeerVoorstelIndienen tp;
	private Element e = new Element();
	private Toolbox tb = new Toolbox();
	
	private TextBox tbBegindatum, tbEinddatum;
	private TextBox tbOnderwerp, tbMaxstudenten;
	private TextBox tbVergoeding;
	private RadioButton rdbtnAfstuderen, rdbtnKorteStagemax, rdbtnLangeStage, rdbtnProjectonderwijs;
	private int validateOnderwerp=0;
	private int validateVergoeding=0;
	private int validateEinddatum=0;
	private int validateBegindatum=0;
	private int validateMaxstudenten=0;
	private int validateTypeOpdracht=0;
	private int row;
	private boolean validateSpecificatiesTab;
	private String errormsg;
	private Label lblPlaatsHulpTekst, lblVergoedingHulpTekst,lblMaxstudentenHulpTekst,lblTypeOpdrachtHulpTekst;
	private Label lblEinddatumHulpTekst, lblBegindatumHulpTekst;

	public TabSpecificaties(AfstudeerVoorstelIndienen tp) {
		this.tp = tp;
	}

	/**
	 * Deze methode bevat alles wat te maken heeft met de tab Opdracht specificaties: <br>
	 * - alle visuele onderdelen zoals labels en buttons <br>
	 * - ClickHandler voor de afhandeling van het click event van de button "volgende". Indien geselecteerd zal de ClickHandler aangeroepen worden.<br>
	 *<br>
	 *In deze tab moeten wat gegevens ingevuld worden over de afstudeeropdracht zoals begin- en einddatum en het afstudeervoorstel.<br>
	 *
	 * @return De complete tab Opdracht specificaties. Deze bestaat uit een FlexTable waarin alle widgets van de tab zitten.
	 */
	public Widget getTabSpecificaties() {
		Label lblStartdatum = new Label("Eerst mogelijke datum opdracht:");
		tbBegindatum = new TextBox();
		tbBegindatum.setText("begin datum");
		tbBegindatum.setReadOnly(true);
		tbBegindatum.setWidth("80px");
		tbBegindatum.addFocusHandler(new FocusHandler() {
			@SuppressWarnings({ "unchecked", "rawtypes" })
			public void onFocus(FocusEvent event) {
				final PopupPanel popupPanel = new PopupPanel(true);
				popupPanel.addCloseHandler(new CloseHandler(){
					public void onClose(CloseEvent event) {
						validatieBegindatum();
						if (tbEinddatum.getText().equals("begin datum")) {
							tp.setLabel("lblEinddatum1", "-");
						}
					}
				});
				DatePicker datePickerBegin = new DatePicker();
				datePickerBegin.addValueChangeHandler(new ValueChangeHandler<Date>() {
					public void onValueChange(ValueChangeEvent<Date> event) {
						Date date = (Date) event.getValue();
						String dateformat = DateTimeFormat.getFormat("dd-MM-yyyy").format(date);
						tbBegindatum.setText(dateformat);
						tp.setLabel("lblStartdatum1",tbBegindatum.getText());
						popupPanel.hide();
					}
				});
				popupPanel.add(datePickerBegin);
				popupPanel.setPopupPosition(tbBegindatum.getAbsoluteLeft(),tbBegindatum.getAbsoluteTop()+ tbBegindatum.getOffsetHeight());
				popupPanel.show();
			}
		});
		lblBegindatumHulpTekst = new Label("Selecteer een begin datum");
		lblBegindatumHulpTekst.setVisible(false);
		
		Label lblUiterlijkeInleverdatumOpdracht = new Label("Uiterlijke inleverdatum opdracht:");
		tbEinddatum = new TextBox();
		tbEinddatum.setText("eind datum");
		tbEinddatum.setReadOnly(true);
		tbEinddatum.setWidth("80px");
		tbEinddatum.addFocusHandler(new FocusHandler() {
			@SuppressWarnings({ "unchecked", "rawtypes" })
			public void onFocus(FocusEvent event) {
				final PopupPanel popupPanel = new PopupPanel(true);
				popupPanel.addCloseHandler(new CloseHandler(){
					public void onClose(CloseEvent event) {
						validatieEinddatum();
						if (tbEinddatum.getText().equals("eind datum")) {
							tp.setLabel("lblEinddatum1", "-");
						}
					}
				});
				DatePicker datePickerEind = new DatePicker();
				datePickerEind.addValueChangeHandler(new ValueChangeHandler<Date>() {
					public void onValueChange(ValueChangeEvent<Date> event) {
						Date date = (Date) event.getValue();
						String dateformat = DateTimeFormat.getFormat("dd-MM-yyyy").format(date);
						tbEinddatum.setText(dateformat);
						tp.setLabel("lblEinddatum1", tbEinddatum.getText());
						popupPanel.hide();
					}
				});
				popupPanel.add(datePickerEind);
				popupPanel.setPopupPosition(tbEinddatum.getAbsoluteLeft(),tbEinddatum.getAbsoluteTop()+ tbEinddatum.getOffsetHeight());
				popupPanel.show();
			}
		});
		lblEinddatumHulpTekst = new Label("Selecteer een eind datum");
		lblEinddatumHulpTekst.setVisible(false);
		
		Label lblNewLabel_2 = new Label("Onderwerp/specialisatie:");
		tbOnderwerp = new TextBox();
		tbOnderwerp.setText("onderwerp");
		tbOnderwerp.setStyleName("grijs");
		tbOnderwerp.addFocusHandler(new FocusHandler(){
			public void onFocus(FocusEvent event) {
				tbOnderwerp.setStyleName("zwart");
				if (tbOnderwerp.getText().equals("onderwerp")) {
					tbOnderwerp.setText("");
				}
			}
		});
		tbOnderwerp.addBlurHandler(new BlurHandler(){
			public void onBlur(BlurEvent event) {
				validatieOnderwerp();
				if (tbOnderwerp.getText().equals("")) {
					tbOnderwerp.setText("onderwerp");
					tp.setLabel("lblOnderwerp1", "-");
				}
			}
		});
		lblPlaatsHulpTekst = new Label("Voer de plaats in van het bedrijf. Bijv.: Utrecht");
		lblPlaatsHulpTekst.setVisible(false);

		Label lblMaximaalAantalStudenten = new Label("Max. aantal studenten te plaatsen:");
		tbMaxstudenten = new TextBox();
		tbMaxstudenten.setText("voer een getal in");
		tbMaxstudenten.setStyleName("grijs");
		tbMaxstudenten.addFocusHandler(new FocusHandler(){
			public void onFocus(FocusEvent event) {
				tbMaxstudenten.setStyleName("zwart");
				if (tbMaxstudenten.getText().equals("voer een getal in")) {
					tbMaxstudenten.setText("");
				}
			}
		});
		tbMaxstudenten.addBlurHandler(new BlurHandler(){
			public void onBlur(BlurEvent event) {
				validatieMaxstudenten();
				if (tbMaxstudenten.getText().equals("")) {
					tbMaxstudenten.setText("voer een getal in");
					tp.setLabel("lblmaxstudenten1", "-");
				}
			}
		});
		lblMaxstudentenHulpTekst = new Label("Voer hier het aantal maximaal te plaatsen studenten in.");
		lblMaxstudentenHulpTekst.setVisible(false);

		Label lblBrutoVergoedingPer = new Label("Bruto vergoeding per maand (in euro's):");
		tbVergoeding = new TextBox();
		tbVergoeding.setStyleName("grijs");
		tbVergoeding.setWidth("138px");
		tbVergoeding.setText("bedrag in euro's");
		tbVergoeding.addFocusHandler(new FocusHandler(){
			public void onFocus(FocusEvent event) {
				tbVergoeding.setStyleName("zwart");
				if (tbVergoeding.getText().equals("bedrag in euro's")) {
					tbVergoeding.setText("");
				}
			}
		});
		tbVergoeding.addBlurHandler(new BlurHandler(){
			public void onBlur(BlurEvent event) {
				validatieVergoeding();
				if (tbVergoeding.getText().equals("")) {
					tbVergoeding.setText("bedrag in euro's");
					tp.setLabel("lblVergoeding1", "-");
				}
			}
		});
		lblVergoedingHulpTekst = new Label("Geldige tekens: 1234567890,-.");
		lblVergoedingHulpTekst.setVisible(false);
		row = 0;
		FlexTable flxVergoeding = new FlexTable();
		flxVergoeding.setWidget(row, 0, new HTML("&euro;"));
		flxVergoeding.setWidget(row, 1, tbVergoeding);
		

		Label lblTypePraktijkopdracht = new Label("Type praktijkopdracht");
		rdbtnAfstuderen = new RadioButton("groep1", "Afstuderen");
		rdbtnAfstuderen.addClickHandler(new ClickHandler(){
			public void onClick(ClickEvent event) {
				validatieTypeOpdracht();
			}
		});
		rdbtnKorteStagemax = new RadioButton("groep1","Korte stage (max. 12 weken)");
		rdbtnKorteStagemax.addClickHandler(new ClickHandler(){
			public void onClick(ClickEvent event) {
				validatieTypeOpdracht();
			}
		});
		rdbtnLangeStage = new RadioButton("groep1", "Lange stage");
		rdbtnLangeStage.addClickHandler(new ClickHandler(){
			public void onClick(ClickEvent event) {
				validatieTypeOpdracht();
			}
		});
		rdbtnProjectonderwijs = new RadioButton("groep1", "Projectonderwijs");
		rdbtnProjectonderwijs.addClickHandler(new ClickHandler(){
			public void onClick(ClickEvent event) {
				validatieTypeOpdracht();
			}
		});
		lblTypeOpdrachtHulpTekst = new Label("Selecteer een type stage");
		lblTypeOpdrachtHulpTekst.setVisible(false);
		
		Button btVolgende = e.getVolgendeButton();
		btVolgende.addClickHandler(new ClickHandler() {
			public void onClick(ClickEvent event) {
				tabSpecificatiesValidatie();
				tp.changeTab(3,4);
			}
		});

		Anchor hprlnkOpdractAnnuleren = new Anchor("Annuleren","https://www.sharepoint.hu.nl");
		Image img = new Image();
		img.setAltText("cancel img");
		img.setUrl("style/icon/cancel.png");

		HorizontalPanel hpAnnuleren = new HorizontalPanel();
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(e.getSpacer());
		hpAnnuleren.add(hprlnkOpdractAnnuleren);
		hpAnnuleren.add(img);

		row = 0;
		FlexTable flxOpdrachtRadiogroup = new FlexTable();
		flxOpdrachtRadiogroup.setWidget(row, 0, rdbtnAfstuderen);
		row++;
		flxOpdrachtRadiogroup.setWidget(row, 0, rdbtnKorteStagemax);
		row++;
		flxOpdrachtRadiogroup.setWidget(row, 0, rdbtnLangeStage);
		row++;
		flxOpdrachtRadiogroup.setWidget(row, 0, rdbtnProjectonderwijs);

		row = 0;
		FlexTable flxOpdrachtHeader = new FlexTable();
		flxOpdrachtHeader.setCellPadding(0);
		flxOpdrachtHeader.setCellSpacing(0);
		flxOpdrachtHeader.setWidget(row, 0,e.getAfstudeerVoorstelIndienenHeader());

		row = 0;
		FlexTable flxOpdrachtContent = new FlexTable();
		flxOpdrachtContent.setCellPadding(0);
		flxOpdrachtContent.setCellSpacing(3);
		flxOpdrachtContent.setWidget(row, 0, lblStartdatum);
		flxOpdrachtContent.setWidget(row, 1, tbBegindatum);
		flxOpdrachtContent.setWidget(row, 2, lblBegindatumHulpTekst);
		row++;
		flxOpdrachtContent.setWidget(row, 0, lblUiterlijkeInleverdatumOpdracht);
		flxOpdrachtContent.setWidget(row, 1, tbEinddatum);
		flxOpdrachtContent.setWidget(row, 2, lblEinddatumHulpTekst);
		row++;
		flxOpdrachtContent.setWidget(row, 0, lblNewLabel_2);
		flxOpdrachtContent.setWidget(row, 1, tbOnderwerp);
		flxOpdrachtContent.setWidget(row, 2, lblPlaatsHulpTekst);
		
		row++;
		flxOpdrachtContent.setWidget(row, 0, lblMaximaalAantalStudenten);
		flxOpdrachtContent.setWidget(row, 1, tbMaxstudenten);
		flxOpdrachtContent.setWidget(row, 2, lblMaxstudentenHulpTekst);
		row++;
		flxOpdrachtContent.setWidget(row, 0, lblBrutoVergoedingPer);
		flxOpdrachtContent.setWidget(row, 1, flxVergoeding);
		flxOpdrachtContent.setWidget(row, 2, lblVergoedingHulpTekst);
		row++;
		flxOpdrachtContent.setWidget(row, 0, lblTypePraktijkopdracht);
		flxOpdrachtContent.setWidget(row, 1, flxOpdrachtRadiogroup);
		flxOpdrachtContent.setWidget(row, 2, lblTypeOpdrachtHulpTekst);

		CaptionPanel cpSpecificaties = new CaptionPanel("Opdracht specificaties");
		cpSpecificaties.add(flxOpdrachtContent);

		row = 0;
		FlexTable flxOpdrachtFooter = new FlexTable();
		flxOpdrachtFooter.setCellPadding(0);
		flxOpdrachtFooter.setCellSpacing(12);
		flxOpdrachtFooter.setWidget(row, 0, btVolgende);
		flxOpdrachtFooter.setWidget(row, 1, hpAnnuleren);

		row = 0;
		FlexTable flxOpdrachtspecificaties = new FlexTable();
		flxOpdrachtspecificaties.setCellPadding(0);
		flxOpdrachtspecificaties.setCellSpacing(3);
		flxOpdrachtspecificaties.setWidget(row, 0, flxOpdrachtHeader);
		row++;
		flxOpdrachtspecificaties.setWidget(row, 0, cpSpecificaties);
		row++;
		flxOpdrachtspecificaties.setWidget(row, 0, flxOpdrachtFooter);

		return flxOpdrachtspecificaties;
	}

	/**
	 * Methode die alle error messages in 1 string zet en deze aan de variabele 'errormsg' geeft.
	 */
	public String getErrormsg(){
		errormsg = "";
		if(validateBegindatum==2){errormsg=errormsg + "- Begindatum is niet correct ingevuld<br />";}
		if(validateEinddatum==2){errormsg=errormsg + "- Einddatum is niet correct ingevuld<br />";}
		if(validateOnderwerp==2){errormsg=errormsg + "- Onderwerp van de afstudeeropdracht is niet correct ingevuld.<br />";} 
		if(validateMaxstudenten==2){errormsg=errormsg + "- Max. aantal studenten is niet correct ingevuld.<br />";}
		if(validateVergoeding==2){errormsg=errormsg + "- Vergoeding is niet correct ingevuld<br />";}
		if(validateTypeOpdracht==2){errormsg=errormsg + "- Er is geen type stage geselecteerd.<br />";}
		return errormsg;
	}

	/**
	 * Deze methode valideert alle ingevoerde gegevens van de tab waar alle opdracht specificaties ingevuld moeten worden<Br>
	 * Er wordt voor elk invoerveld een methode aangeroepen die een validatie uitvoert.<br>
	 * Bij foute invoer zal er een foutmelding verschijnen. 
	 */
	private void tabSpecificatiesValidatie(){
		if(validateBegindatum==0){validatieBegindatum();}
		if(validateEinddatum==0){validatieEinddatum();}
		if(validateOnderwerp==0){validatieOnderwerp();}
		if(validateMaxstudenten==0){validatieMaxstudenten();}
		if(validateVergoeding==0){validatieVergoeding();}
		if(validateTypeOpdracht==0){validatieTypeOpdracht();}
		if(validateOnderwerp==1&&validateBegindatum==1&&validateEinddatum==1&&validateMaxstudenten==1
				&&validateVergoeding==1&&validateTypeOpdracht==3){
			validateSpecificatiesTab = true;
		}

		if(!validateSpecificatiesTab){
			tp.showDialogBox(getErrormsg(), "Foutmelding");
			tp.tabStatus("TabSpecificaties", false);
		} else {
			tp.tabStatus("TabSpecificaties", true);
		}
	}

	/**
	 * Deze functie test de waarde van het invoerveld van het onderwerp van de afstudeeropdracht.<br>
	 * @return int <br>
	 * - 1 wanneer de waarde geldig is. De waarde van het invoerveld zal nu in het overzichts tab zichtbaar zijn. <br>
	 * - 2 wanneer de waarde niet geldig is. De tekst van de foutmelding wordt geset. (nog niet getoond)
	 */
	public int validatieOnderwerp(){
		validateOnderwerp = 1; //true

		if (!tb.NaamRegex(tbOnderwerp.getText()) ||tbOnderwerp.getText().equals("onderwerp")) {
			validateSpecificatiesTab = false;
			validateOnderwerp = 2;//false
			tbOnderwerp.setStyleName("fouteinvoer");
		}
		else{
			tp.setLabel("lblOnderwerp1", tbOnderwerp.getText());
			tbOnderwerp.setStyleName("correcteinvoer");
		}
		if(validateOnderwerp == 1){lblPlaatsHulpTekst.setVisible(false);}
		if(validateOnderwerp == 2){lblPlaatsHulpTekst.setVisible(true);}
		return validateOnderwerp;
	}
	
	/**
	 * Deze functie test de waarde van het invoerveld van de vergoeding van de afstudeeropdracht.<br>
	 * @return int <br>
	 * - 1 wanneer de waarde geldig is. De waarde van het invoerveld zal nu in het overzichts tab zichtbaar zijn. <br>
	 * - 2 wanneer de waarde niet geldig is. De tekst van de foutmelding wordt geset. (nog niet getoond)
	 */
	public int validatieVergoeding(){
		validateVergoeding = 1; //true

		if (!tbVergoeding.getText().matches("^[0-9,'-.]+$")) {
			validateSpecificatiesTab = false;
			validateVergoeding = 2;//false
			tbVergoeding.setStyleName("fouteinvoer");
		}
		else{
			tp.setLabel("lblVergoeding1", tbVergoeding.getText());
			tbVergoeding.setStyleName("correcteinvoer");
		}
		if(validateVergoeding == 1){lblVergoedingHulpTekst.setVisible(false);}
		if(validateVergoeding == 2){lblVergoedingHulpTekst.setVisible(true);}
		return validateVergoeding;
	}

	/**
	 * Deze functie test de waarde van het invoerveld van de einddatum van de afstudeeropdracht.<br>
	 * @return int <br>
	 * - 1 wanneer de waarde geldig is. De waarde van het invoerveld zal nu in het overzichts tab zichtbaar zijn. <br>
	 * - 2 wanneer de waarde niet geldig is. De tekst van de foutmelding wordt geset. (nog niet getoond)
	 */
	public int validatieEinddatum(){
		validateEinddatum = 1; //true

		if (!tbEinddatum.getText().matches("^[0-9]{2}[-][0-9]{2}[-][0-9]{4}$")) {
			validateSpecificatiesTab = false;
			validateEinddatum = 2;//false
			tbEinddatum.setStyleName("fouteinvoer");
		}
		else{
			tp.setLabel("lblEinddatum1", tbEinddatum.getText());
			tbEinddatum.setStyleName("correcteinvoer");
		}
		if(validateEinddatum == 1){lblEinddatumHulpTekst.setVisible(false);}
		if(validateEinddatum== 2){lblEinddatumHulpTekst.setVisible(true);}
		return validateEinddatum;
	}

	/**
	 * Deze functie test de waarde van het invoerveld van de begindatum van de afstudeeropdracht.<br>
	 * @return int <br>
	 * - 1 wanneer de waarde geldig is. De waarde van het invoerveld zal nu in het overzichts tab zichtbaar zijn. <br>
	 * - 2 wanneer de waarde niet geldig is. De tekst van de foutmelding wordt geset. (nog niet getoond)
	 */
	public int validatieBegindatum(){
		validateBegindatum = 1; //true

		if (!tbBegindatum.getText().matches("^[0-9]{2}[-][0-9]{2}[-][0-9]{4}$")) {
			validateSpecificatiesTab = false;
			validateBegindatum = 2;//false
			tbBegindatum.setStyleName("fouteinvoer");
		}
		else{
			tp.setLabel("lblBegindatum1", tbBegindatum.getText());
			tbBegindatum.setStyleName("correcteinvoer");
		}
		if(validateBegindatum == 1){lblBegindatumHulpTekst.setVisible(false);}
		if(validateBegindatum== 2){lblBegindatumHulpTekst.setVisible(true);}
		return validateBegindatum;
	}

	/**
	 * Deze functie test de waarde van het invoerveld van het maximaal te plaatsen studenten van de afstudeeropdracht.<br>
	 * @return int <br>
	 * - 1 wanneer de waarde geldig is. De waarde van het invoerveld zal nu in het overzichts tab zichtbaar zijn. <br>
	 * - 2 wanneer de waarde niet geldig is. De tekst van de foutmelding wordt geset. (nog niet getoond)
	 */
	public int validatieMaxstudenten(){
		validateMaxstudenten = 1; //true

		if (!tbMaxstudenten.getText().matches("^[0-9]+$")) {
			validateSpecificatiesTab = false;
			validateMaxstudenten = 2;//false
			tbMaxstudenten.setStyleName("fouteinvoer");
		}
		else{
			tp.setLabel("lblMaxstudenten1", tbMaxstudenten.getText());
			tbMaxstudenten.setStyleName("correcteinvoer");
		}
		if(validateMaxstudenten == 1){lblMaxstudentenHulpTekst.setVisible(false);}
		if(validateMaxstudenten== 2){lblMaxstudentenHulpTekst.setVisible(true);}
		return validateMaxstudenten;
	}

	/**
	 * Deze functie test de waarde van de radiobuttons van het type van de afstudeeropdracht.<br>
	 * @return int <br>
	 * - 1 wanneer de waarde geldig is. De waarde van het invoerveld zal nu in het overzichts tab zichtbaar zijn. <br>
	 * - 2 wanneer de waarde niet geldig is. De tekst van de foutmelding wordt geset. (nog niet getoond)
	 */
	public int validatieTypeOpdracht(){
		validateTypeOpdracht = 1;//true
		if (rdbtnAfstuderen.getValue()) {
			validateTypeOpdracht = 3;//dat zowel de validatie is uitgevoerd als dat er iets geselecteerd is
			tp.setLabel("lblType1", "Afstuderen");
		}
		if (rdbtnKorteStagemax.getValue()) {
			validateTypeOpdracht = 3;//true
			tp.setLabel("lblType1", "Korte stage");
		}
		if (rdbtnLangeStage.getValue()) {
			validateTypeOpdracht = 3;//true
			tp.setLabel("lblType1", "Lange stage");
		}
		if (rdbtnProjectonderwijs.getValue()) {
			validateTypeOpdracht = 3;//true
			tp.setLabel("lblType1", "Projectonderwijs");
		}
		if(validateTypeOpdracht==1){//wanneer er dus niks geselecteerd is
			validateTypeOpdracht = 2;//false
			tp.setLabel("lblType1", "-");
		}
		if(validateTypeOpdracht == 3){lblTypeOpdrachtHulpTekst.setVisible(false);}
		if(validateTypeOpdracht== 2){lblTypeOpdrachtHulpTekst.setVisible(true);}
		return validateTypeOpdracht;
	}
}
